package marketplace.jpa.entities;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.OneToOne;

import marketplace.jpa.datas.DataSubcategoria;


@Entity
public class Subcategoria implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	@Id
	@Column(name="nombreSubcategoria", nullable=false, length=100, unique=true)
	private String nombreSubcategoria;
	private String descripcion;
	@OneToOne
	private Categoria categoria;
	
	
	///////////////// CONSTRUCTORES ///////////////////

	public Subcategoria() { super(); }
		
	public Subcategoria(DataSubcategoria sc) {
		this.setDescripcion(sc.getDescripcion());
		this.setNombreSubcategoria(sc.getNombre());
		this.setCategoria(new Categoria(sc.getCategoria()));
	}
	
	///////////////// GETERS & SETERS ///////////////////
	
	public String getNombreSubcategoria() { return nombreSubcategoria; }
	public void setNombreSubcategoria(String nombre) { this.nombreSubcategoria = nombre; }
	
	public String getDescripcion() { return descripcion; }
	public void setDescripcion(String descripcion) { this.descripcion = descripcion; }
	
	public Categoria getCategoria() { return categoria; }
	public void setCategoria(Categoria categoria) { this.categoria = categoria; }

	public void setFromData(DataSubcategoria dsc) {
		this.setDescripcion(dsc.getDescripcion());
		this.setNombreSubcategoria(dsc.getNombre());
		this.setCategoria(new Categoria(dsc.getCategoria()));
	}
	
}
